FOUNDRY-SN-MAC-AUTHENTICATION-MIB DEFINITIONS ::= BEGIN

IMPORTS
    MODULE-IDENTITY, OBJECT-TYPE, Integer32
      FROM SNMPv2-SMI
    MacAddress, TimeStamp
      FROM SNMPv2-TC
    InterfaceIndex
      FROM IF-MIB;


snMacAuth MODULE-IDENTITY
    LAST-UPDATED "200706250000Z" -- June 25, 2007
    ORGANIZATION "Foundry Networks, Inc"
    CONTACT-INFO
            ""
    DESCRIPTION
            "Management Information Base module for MAC authentication
            configuration and statistics."
    REVISION     "200706250000Z" -- June 25, 2007
    DESCRIPTION
            ""
   ::= { iso(1) org(3) dod(6) internet(1) private(4) enterprises(1) foundry(1991) products(1) switch(1) snSwitch(3) 28 }


-- MAC Authentication MIBs

snMacAuthGlobal         OBJECT IDENTIFIER ::= { snMacAuth 1 }

snMacAuthClearGlobalCmd OBJECT-TYPE
        SYNTAX     INTEGER { valid(0), clear(1) }
        MAX-ACCESS read-write
        STATUS     current
        DESCRIPTION
                "valid(0) - a SNMP-GET of this mib shows that it is valid command to use. 
                 clear(1) - represents clear MAC Authentication table for all ports."
        ::= { snMacAuthGlobal 1 }

snMacAuthGlobalConfigState OBJECT-TYPE
        SYNTAX     INTEGER { disabled(0), enabled(1) }
        MAX-ACCESS read-write
        STATUS     current
        DESCRIPTION
                "Enable/disable MAC authentication on the global level."
        ::= { snMacAuthGlobal 2 }

--
-- MAC Authentication Clear Interface command Table
--

snMacAuthClearIfCmdTable OBJECT-TYPE
        SYNTAX     SEQUENCE OF SnMacAuthClearIfCmdEntry
        MAX-ACCESS not-accessible
        STATUS     current
        DESCRIPTION
                "The status of clearing an MAC Authentication entry for an interface."
        ::= { snMacAuth 2 }

snMacAuthClearIfCmdEntry OBJECT-TYPE
        SYNTAX     SnMacAuthClearIfCmdEntry
        MAX-ACCESS not-accessible
        STATUS     current
        DESCRIPTION
                "An entry of clearing an MAC Authentication entry for an interface."
        INDEX { snMacAuthClearIfCmdIfIndex }
        ::= { snMacAuthClearIfCmdTable 1 }

SnMacAuthClearIfCmdEntry ::= SEQUENCE {
    snMacAuthClearIfCmdIfIndex     InterfaceIndex,
    snMacAuthClearIfCmdAction      INTEGER
}

snMacAuthClearIfCmdIfIndex OBJECT-TYPE
    SYNTAX     InterfaceIndex
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
            "ifIndex value of the local interface on which a clear command is issued and monitored."
        ::= { snMacAuthClearIfCmdEntry 1 }

snMacAuthClearIfCmdAction      OBJECT-TYPE
        SYNTAX     INTEGER { valid(0), clear(1) }
        MAX-ACCESS read-write
        STATUS     current
        DESCRIPTION
                "valid(0) - a SNMP-GET of this mib shows that it is valid command to use. 
                 clear(1) - represents clearing an MAC Authentication entry for an interface."
        ::= { snMacAuthClearIfCmdEntry 2 }

--
-- MAC Authentication Table
--

snMacAuthTable OBJECT-TYPE
        SYNTAX     SEQUENCE OF SnMacAuthEntry
        MAX-ACCESS not-accessible
        STATUS     current
        DESCRIPTION
                "MAC Authentication table."
        ::= { snMacAuth 3 }

snMacAuthEntry OBJECT-TYPE
        SYNTAX     SnMacAuthEntry
        MAX-ACCESS not-accessible
        STATUS     current
        DESCRIPTION
                "An entry in the MAC Authentication table."
        INDEX { snMacAuthIfIndex, snMacAuthVlanId, snMacAuthMac }
        ::= { snMacAuthTable 1 }

SnMacAuthEntry ::= SEQUENCE {
    snMacAuthIfIndex               InterfaceIndex,
    snMacAuthVlanId                Integer32,
    snMacAuthMac                   MacAddress,
    snMacAuthState                 INTEGER,
    snMacAuthTimeStamp             TimeStamp,
    snMacAuthAge                   Integer32,
    snMacAuthDot1x                 INTEGER
}

snMacAuthIfIndex OBJECT-TYPE
    SYNTAX     InterfaceIndex
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
        "In order to identify a particular interface, this
                object shall identify the instance of the ifIndex
                object, defined in RFC 2863."
        ::= { snMacAuthEntry 1 }

snMacAuthVlanId OBJECT-TYPE
     SYNTAX     Integer32
     MAX-ACCESS not-accessible
     STATUS     current
     DESCRIPTION
        "The ID of a VLAN of which this port is a member. Port must
        be untagged. For tagged port which belongs to multiple
        VLANs, this object return 0 which is an invalid VLAN ID
        value."
     ::= { snMacAuthEntry 2 }

snMacAuthMac OBJECT-TYPE
        SYNTAX     MacAddress
        MAX-ACCESS not-accessible
        STATUS     current
        DESCRIPTION
                "MAC Address to be authenticated."
        ::= { snMacAuthEntry 3 }

snMacAuthState OBJECT-TYPE
        SYNTAX     INTEGER { authenticate(1), unauthenticate(2) }
        MAX-ACCESS read-only
        STATUS     current
        DESCRIPTION
                "."
        ::= { snMacAuthEntry 4 }

snMacAuthTimeStamp OBJECT-TYPE
        SYNTAX     TimeStamp
        MAX-ACCESS read-only
        STATUS     current
        DESCRIPTION
                "Timestamp at which the MAC was authenticated or failed to be authenticated."
        ::= { snMacAuthEntry 5 }

snMacAuthAge OBJECT-TYPE
        SYNTAX     Integer32
        MAX-ACCESS read-only
        STATUS     current
        DESCRIPTION
                "Age of the mac session in which the MAC address is authenticated."
        ::= { snMacAuthEntry 6 }

snMacAuthDot1x OBJECT-TYPE
        SYNTAX     INTEGER { disabled(0), enabled(1) }
        MAX-ACCESS read-only
        STATUS     current
        DESCRIPTION
                "Indicates whether the Dot1x is enabled or not."
        ::= { snMacAuthEntry 7 }

--
-- MAC Authentication MAC Session Clear Table
--

snMacAuthClearMacSessionTable OBJECT-TYPE
        SYNTAX     SEQUENCE OF SnMacAuthClearMacSessionEntry
        MAX-ACCESS not-accessible
        STATUS     current
        DESCRIPTION
                "The status of clearing an MAC Session entry indexed by a MAC address."
        ::= { snMacAuth 4 }

snMacAuthClearMacSessionEntry OBJECT-TYPE
        SYNTAX     SnMacAuthClearMacSessionEntry
        MAX-ACCESS not-accessible
        STATUS     current
        DESCRIPTION
                "An entry of clearing an MAC Session entry indexed by a MAC address."
        INDEX { snMacAuthClearMacSessionIfIndex, snMacAuthClearMacSessionMac }
        ::= { snMacAuthClearMacSessionTable 1 }

SnMacAuthClearMacSessionEntry ::= SEQUENCE {
    snMacAuthClearMacSessionIfIndex InterfaceIndex,
    snMacAuthClearMacSessionMac     MacAddress,
    snMacAuthClearMacSessionAction  INTEGER
}

snMacAuthClearMacSessionIfIndex OBJECT-TYPE
    SYNTAX     InterfaceIndex
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
            "ifIndex value of the local interface on which a clear command is issued and monitored."
        ::= { snMacAuthClearMacSessionEntry 1 }

snMacAuthClearMacSessionMac OBJECT-TYPE
        SYNTAX     MacAddress
        MAX-ACCESS not-accessible
        STATUS     current
        DESCRIPTION
                "An MAC Session entry indexed by a MAC address."
        ::= { snMacAuthClearMacSessionEntry 2 }

snMacAuthClearMacSessionAction OBJECT-TYPE
        SYNTAX     INTEGER { valid(0), clear(1) }
        MAX-ACCESS read-write
        STATUS     current
        DESCRIPTION
                "valid(0) - a SNMP-GET of this mib shows that it is valid command to use. 
                 clear(1) - represents clearing an MAC Session entry indexed by a MAC address."
        ::= { snMacAuthClearMacSessionEntry 3 }

END